ראיון ראשון עם ר"צ:
1, כתוב פונקציה שתכווץ מחרוזת כך:
AAAAAABB -> A6B2
בפעם הראשונה מותר מערך עזר ולאחר מכן אסור.
2, נתונים קבוצת חוטים שמעוניינים להדפיס למסך, נתון חוט נוסף שתפקידו לעזור במניעת הדפסות "מבולגנות" (שחוטים לא יכנסו ל PRINTF באמצע).
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2017
1, עם מערך עזר - נרוץ על המערך, כשנתקל באות נכתוב אותה ונתחיל למנות כמה פעמים היא מופיעה, כשנתקל באות שונה או בסוף המחרוזת נרשום את המונה למערך עזר.
בלי מערך עזר - נעבור על המערך בפעם הראשונה ונבין את הגודל הסופי של המערך שיתקבל (מספר האותיות כפול 2), כעת נצביע על סוף המחרוזת ועל המיקום האחרון בגודל הסופי של המחרוזת, המצביע על סוף המחרוזת יתחיל לרוץ אחורה ולספר כמה פעמים מופיעה אות ונרשום אותה בסוף המחרוזת עד להחלפת אות וכו'.
2, נכין מערך מאופס בגודל מספר החוטים,כל חוט שירצה להדפיס יסמן '1' בתא המתאים לו ויחכה, יהיה עוד חוט ש"ינהל" מי ניגש להדפסה, חוט זה ירוץ על המערך באופן מחזורי וכל פעם שיתקל בתא עם '1' יתן גישה לחוט המתאים להדפסה ויחכה שהחוט יסיים ויחזיר את התא המתאים להיות '0'.